package com.koron.operation.classes.info.bean.po;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.koron.bean.base.BaseBean;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * 班别列表(ClassesItem)表实体类
 *
 * @author jzp
 * @since 2021-10-19
 */
@EqualsAndHashCode(callSuper = true)
@Data
@ApiModel(value = "班别列表", description = "ClassesItem")
public class ClassesItem extends BaseBean {

    /**
     * 班别方案id
     */
    @ApiModelProperty("班别方案id")
    private String classesId;

    /**
     * 班别名称
     */
    @ApiModelProperty("班别名称")
    private String name;

    /**
     * 是否空白班，0不是，1是
     */
    @ApiModelProperty("是否空白班，0不是，1是")
    private Integer blanked;

    /**
     * 班别开始时间
     */
    @ApiModelProperty("班别开始时间")
    @DateTimeFormat(pattern = "HH:mm")
    @JsonFormat(pattern = "HH:mm", timezone = "GMT+8")
    private Date startTime;

    /**
     * 值班时长(h)
     */
    @ApiModelProperty("值班时长(h)")
    private String duration;

    /**
     * 班别结束时间
     */
    @ApiModelProperty("班别结束时间")
    @DateTimeFormat(pattern = "HH:mm")
    @JsonFormat(pattern = "HH:mm", timezone = "GMT+8")
    private Date endTime;

    /**
     * 班别分类类型
     */
    @ApiModelProperty("班别分类类型")
    private String staffType;

    /**
     * 班别类型，operation_class_tabs
     */
    @ApiModelProperty("班别类型，operation_class_tabs")
    private String tabs;

    /**
     * 加班开始时间
     */
    @ApiModelProperty("加班开始时间")
    private Date overStartTime;

    /**
     * 加班时长(h)
     */
    @ApiModelProperty("加班时长(h)")
    private String overDuration;

    /**
     * 加班结束时间
     */
    @ApiModelProperty("加班结束时间")
    private Date overEndTime;

    /**
     * 排序字段
     */
    @ApiModelProperty("排序字段")
    private Integer sort;

    /**
     * 班别说明
     */
    @ApiModelProperty("班别说明")
    private String remark;

}
